package com.dlc.shop.user.common.model;

import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.Data;

import java.io.Serial;
import java.io.Serializable;
import java.util.Date;
import java.util.List;

/**
 * 弹窗广告
 * @author TRACK
 */
@Data
@TableName("tz_cost_per_popup")
public class CostPerPopup implements Serializable {
    @Serial
    private static final long serialVersionUID = 1L;

    /**
     * 弹窗广告id
     */
    @TableId
    private Long popupId;

    /**
     * 店铺id
     */
    private Long shopId;

    /**
     * 弹窗名称
     */
    private String popupName;

    /**
     * 状态  1.未开始 2.投放中 3.已结束
     */
    private Integer status;

    /**
     * 触发页面类型 1.平台首页 2.会员中心 3.支付成功 4.店铺首页 5.商品详情
     */
    private Integer pageType;

    /**
     * 弹窗图片
     */
    private String popupPic;

    /**
     * 跳转页面
     */
    private String jumpUrl;

    /**
     * 推送用户类型 0.所有用户 1.免费会员 2.付费会员 3.店铺客户 4.店铺会员
     */
    private Integer userType;

    /**
     * 推送开始时间
     */
    private Date startTime;

    /**
     * 推送结束时间
     */
    private Date endTime;

    /**
     * 推送频次 0.永久一次 1.每次进入 2.自定义频次
     */
    private Integer pushFrequency;

    /**
     * 按x天推送
     */
    private Integer dayFrequency;

    /**
     * 按周推送 eg. 1,2 代表周日，周一
     */
    private String weekFrequency;

    /**
     * 创建时间
     */
    private Date createTime;
    /**
     * 更新时间
     */
    private Date updateTime;

    /**
     * 关联会员等级id列表
     */
    @TableField(exist = false)
    private List<Long> userLevelIds;
}
